package com.innoking.docsys.workflow.service;

import com.innoking.docsys.utils.ResultObjVO;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * 描述:
 *
 * @author zyp
 * @description 工作流部署service接口
 * @create 2019-09-06 14:13
 */
public interface WorkflowDeployService {

    /**
     * @author:zyp
     * @description 获取工作流部署数据
     * @date: 2019/9/6 14:20
     * @return
     */
    ResultObjVO getActDeploy(String data);

    /**
     * @author:zyp
     * @description 读取资源，通过部署ID
     * @date: 2019/9/9 11:20
     * @return
     */
    void loadByDeployment(String deploymentId,String resourceType,HttpServletResponse response);

    /**
     * @author:zyp
     * @description 删除工作流部署数据
     * @date: 2019/9/9 11:42
     * @return 
     */
    ResultObjVO deleteDeploy(List<String> deploymentIds);
    
    /**
     * @author:zyp
     * @description 部署ID转换为model
     * @date: 2019/9/9 11:48
     * @return 
     */
    ResultObjVO convertToModel(List<String> deploymentIds);

    /**
     * @author:zyp
     * @description 通过文件部署项目 并定义
     * @date: 2019/9/9 12:00
     * @return 
     */
    ResultObjVO deployByFile(MultipartFile file, String defineCode);

    /**
     * @author:zyp
     * @description 修改部署后的流程状态
     * @date: 2019/9/9 16:13
     * @return
     */
    ResultObjVO updateState(String state, String deploymentId);

}